Data migration system and data migration method

ABSTRACT

In a system for migrating data between document management applications, if an inheritance setting of an access right to a folder in a source document management application is a first inheritance setting for inheriting an access right to a parent folder, the inheritance setting of the access right is changed to a second inheritance setting for setting an access right exclusively for the folder while the same access right as the access right to the parent folder is set. Then, the folder is migrated to the destination document management application. If a hierarchy including the folder to be migrated exceeds an upper limit on the number of hierarchies in the destination document management application, the folder is stored in a shallower hierarchy in the destination document management application.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to a data migration system, a datamigration method, and a computer readable storage medium for migratingan access right in data migration between different document managementsystems.

2. Description of the Related Art

In a document management system, access rights “who” and “what can beexecuted” can be normally set in folders and documents. An attempt toindividually set access rights in all folders and documents takesthousands of man-hours, and makes the subsequent maintenance difficult.

In the document management system, “an access right inherits parent'sauthority” can be set for the designated folder or document. JapanesePatent Application Laid-Open No. 2007-193826 discusses setting an accessright only in the highest hierarchy and determining, when an accessrequest is issued to hierarchies other than the highest hierarchy,whether access can be made by referring to the access right in thehighest hierarchy.

If data is migrated from a first document management system (i.e. asource document management system) to a second document managementsystem (i.e. a destination document management system), wherein thefirst and second document management systems have differentspecifications, a wrong access right may be set in a conventionaltechnique.

For example, the destination document management system may be lower inan upper limit on the depth of folder hierarchies. In this case, theapplicant considers a technique that a folder in the hierarchy exceedingthe upper limit may be moved to the higher hierarchy. Thus, data can bemigrated without exceeding the upper limit. If an access right to thefolder that has been moved to the higher hierarchy is set to “inheritparent's authority”, a wrong access right may be set in an area to whichthe folder has been moved.

If an access right in the highest hierarchy is referred to, a flexibleaccess right cannot be set. However, a wrong access right may be setdepending on how a folder exceeding an upper limit on the number ofhierarchies is moved.

SUMMARY OF THE INVENTION

The present invention is directed to a data migration system capable ofcorrectly migrating an access right when data is migrated betweendifferent document management systems.

According to an aspect of the present invention, a data migration systemfor migrating data managed in a folder having a hierarchical structurefrom a source document management application to a destination documentmanagement application, which differs in an upper limit on the number ofhierarchies from the source document management application includes asetting unit configured to change, when an inheritance setting of anaccess right set in a folder to be migrated in the source documentmanagement application is an inheritance setting for inheriting anaccess right to a parent folder, the inheritance setting in the folderto be migrated to an inheritance setting for setting an access rightexclusively for the folder while setting a similar access right to theaccess right to the parent folder in the folder to be migrated, anexport unit configured to export the folder to be migrated, dataincluded in the folder, and information relating to an access right tothe folder, an import unit configured to import, when a hierarchyincluding the folder to be migrated, which has been exported by theexport unit, exceeds the upper limit on the number of hierarchies in thedestination document management application, a folder under thehierarchy exceeding the upper limit and data included in the folder to ahierarchy shallower than the upper limit in the destination documentmanagement application, and a change unit configured to change, when theaccess right to the folder imported by the import unit, which has beenanalyzed based on the access right information, and the access right tothe parent folder of the folder are equal to each other, an inheritancesetting of the access right to the folder imported by the import unit toan inheritance setting for inheriting the access right to the parentfolder.

In the present invention, when the data is migrated between thedifferent document management systems, the access right can be correctlymigrated.

Further features and aspects of the present invention will becomeapparent from the following detailed description of exemplaryembodiments with reference to the attached drawings.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of the specification, illustrate exemplary embodiments, features,and aspects of the invention and, together with the description, serveto explain the principles of the invention.

FIG. 1 illustrates a system configuration according to an exemplaryembodiment of the present invention.

FIG. 2 illustrates a flow of data migration according to the exemplaryembodiment of the present invention.

FIG. 3 illustrates a software configuration of a data exporter accordingto the exemplary embodiment of the present invention.

FIG. 4 illustrates a software configuration of a data importer accordingto the exemplary embodiment of the present invention.

FIG. 5 illustrates an example of an access right management tableaccording to the exemplary embodiment of the present invention.

FIG. 6 illustrates an example of a UI in a data exporter.

FIG. 7 illustrates an example of a UI in a data importer.

FIG. 8 illustrates an example of a log of a precheck result.

FIG. 9 is a flowchart of precheck processing.

FIG. 10 is a flowchart of export processing.

FIG. 11 is a flowchart of import processing.

FIG. 12A illustrates an example of data migration and an access rightbefore migrating, FIG. 12B illustrates an example of data migration andan access right after export, and FIG. 12C illustrates an example ofdata migration and an access right after migration.

FIG. 13 is a flowchart of export processing.

FIG. 14 is a flowchart of import processing.

FIG. 15 is a flowchart of import processing.

FIG. 16 illustrates an example of data migration and an access rightafter migrating.

DESCRIPTION OF THE EMBODIMENTS

Various exemplary embodiments, features, and aspects of the inventionwill be described in detail below with reference to the drawings.

While a target in which an access right is to be set is described as a“folder” in the present exemplary embodiment, the target is not limitedto a folder such as so-called Microsoft Windows (registered trademark)as long as it can implement a hierarchical structure.

A first exemplary embodiment of the present invention will be describedwith reference to FIGS. 1 to 12. FIG. 1 is a schematic view of a datamigration system according to the present exemplary embodiment. The datamigration system includes at least a source server 101, a destinationserver 102, and a client personal computer (PC) 103.

A source document management application in data migration is operatingin the source server 101. A destination document management applicationin data migration is operating in the destination server 102. The clientPC 103 is a PC of a user who uses a document management system.

A network such as Ethernet (registered trademark) connects the pluralityof PCs (the servers 101 and 102 and the client PC 103). All the PCsinclude hardware components such as a central processing unit (CPU), arandom access memory (RAM), a read-only memory (ROM), a hard disk drive(HDD), and a network interface card.

For convenience, only three PCs are illustrated in FIG. 1. However,three or more PCs may exist. On the other hand, the source server 101and the destination server 102 may be the same PC. While a printer and anetwork apparatus are omitted, they may be included in the datamigration system.

FIG. 2 illustrates a flow of data migration from the source server 101to the destination server 102. The source server 101 includes a dataexporter 201, a source document management application 202, and astorage unit 203.

The storage unit 203 stores various types of information in documentmanagement, including folders and documents. The source documentmanagement application 202 performs processing such as registration,deletion, reading, acquisition, and search of the document for theinformation stored in the storage unit 203. The data exporter 201 is anapplication for extracting data stored in the storage unit 203, andstores the extracted data in a temporary storage area 207.

The temporary storage area 207 may be in a storage device in the sourceserver 101, may be in a storage device in the destination server 102, ormay be arranged on media such as another PC, a universal serial bus(USB) memory, a compact disk (CD), and a digital versatile disk (DVD).

The destination server 102 includes a data importer 204, a destinationdocument management application 205, and a storage unit 206. Thefunctions of the destination document management application 205 and thestorage unit 206 are respectively the same as those of the sourcedocument management application 202 and the storage unit 203. The dataimporter 204 is an application for registering the data in the temporarystorage area 207 in the storage unit 206.

The document management applications 202 and 205 and the storage units203 and 206 may respectively exist in separate PCs. Similarly, the dataexporter 201 and the data importer 204 may exist in a different PC fromthe one in which the storage units 203 and 206 are stored.

FIG. 3 illustrates an example of a software configuration of the dataexporter 201. The data exporter 201 is a program that operates on theCPU in the source server 101.

A UI unit 301 displays necessary information for a user while receivinginput from the user. A log output unit 302 outputs a log of an operationresult or an operating condition of the data exporter 201.

An access right processing unit 303 acquires access right informationexisting in the storage unit 203. At this time, if an inheritancesetting of an access right to a folder is set to “inherit parent'sauthority”, it is changed to “set exclusive authority”, and an accessright set in a parent folder is set in the folder. Details of the accessright information will be described below with reference to FIG. 5.

A data export unit 304 extracts all data to be migrated, which exist inthe storage unit 203, into the temporary storage area 207. Whileprocessing for converting a format of a document is performed, asneeded, description thereof is omitted in the present exemplaryembodiment. A precheck unit 305 determines whether data can be migratedto the destination document management application 205 before actuallyexporting the data.

For example, it is determined whether the number of documents, thedocument size, and the number of folder hierarchies do not exceed theirupper limits in the destination document management application 205. Adatabase (DB) access unit 306 accesses the storage unit 203, and readsand writes the data.

FIG. 4 illustrates an example of a software configuration of the dataimporter 204. The data importer 204 is a program that operates on theCPU in the destination server 102.

A UI unit 401 displays necessary information for the user whilereceiving input from the user. A log output unit 402 outputs a log of anoperation result or an operating condition of the data importer 204. Anaccess right processing unit 403 registers access right information,which exists in the temporary storage area 207, in the storage unit 206.

At this time, if an access right to a folder is the same as an accessright to a parent folder, an inheritance setting of the access right ischanged to “inherit a parent's access right”.

A data import unit 404 registers data to be migrated, which exists inthe temporary storage area 207, in the storage unit 206. A limit checkunit 405 checks whether the data to be migrated, which exists in thetemporary storage area 207, corresponds to upper limits in thedestination document management application 205.

Examples include the number of documents, the document size, and thenumber of folder hierarchies. In the present exemplary embodiment,particularly the number of folder hierarchies is checked. Morespecifically, the limit check unit 405 determines whether a hierarchyexceeding the upper limit in the number of folder hierarchies in thedestination document management application 205 is included in thetemporary storage area 207.

If the hierarchy exceeding the upper limit in the number of folderhierarchies is included in the temporary storage area 207, the dataimport unit 404 moves a folder in the hierarchy exceeding the upperlimit in the number of folder hierarchies to a higher hierarchy. Linkinformation is set to prove that the folder hierarchies and the higherhierarchy are originally connected to each other.

A DB access unit 406 accesses the storage unit 206, and reads and writesdata. A precheck unit may exist in the data importer 204, which is notillustrated. If a precheck unit exists in the data importer 204, itsfunction is similar to that of the precheck unit 305, and its operationis performed before the data is imported.

FIG. 5 illustrates an example of a table for managing access rightinformation. An access right management table 501 is stored in each ofthe storage units 203 and 206. A column 502 stores information relatingto a folder in which an access right is to be set. While the folder isrecorded in a path format in the present exemplary embodiment, thefolder may be recorded in any format as long as a hierarchical structurecan be recognized.

A column (an inheritance setting) 503 retains information indicatingwhether a parent's access right is inherited. If the access right isinherited, the same access right as that to a parent folder is set inthe folder. A parent of a folder means the next hierarchy above ahierarchy including the folder.

A column (an access right) 504 retains information relating to authoritythat a user or a group has for a folder. The authority includes sometypes of rights such as a deletion right, an editing right, and areading right. If “inherit parent's authority” is set in the column 503,nothing is set in the column 504.

FIG. 6 illustrates an example of a UI 601 in the data exporter 201. TheUI 601 may be executed in any format, for example, on an OS as astand-alone application or on a web browser.

Data to be exported in the source document management application 202and an export destination are displayed in an area 602. While a unit ofthe data to be exported is optional, a hierarchy higher than a hierarchyincluding a folder (called a library or a cabinet, for example) may beregistered. The export destination is a path in the temporary storagearea 207.

In addition thereto, the number of documents and the number of foldersin the data to be exported may be displayed. Information duringprocessing, such as the number of processed documents and an executiontime, may be displayed. A plurality of data to be exported and aplurality of export destinations may be registered.

A condition during processing is displayed in an area 603. If aplurality of data to be exported and a plurality of export destinationsare registered in the area 602, their respective total values aredisplayed.

A button 604 is used to set a location of data to be exported. A button605 is used to set a storage destination of exported data. A button 606is used to perform a precheck before actually exporting data. A button607 is used to export data.

While the UI 601 has been described as an example, all elements are notnecessarily required. Conversely, an element to be conveniently used bythe user may be added.

FIG. 7 illustrates an example of an UI 701 in the data importer 204. TheUI 701 may be executed in any format, for example, on an OS as astand-alone application or on a web browser.

An import destination in the destination document management application205 and a storage location of data to be imported are displayed in anarea 702. The storage location of the data to be imported is a path inthe temporary storage area 207. In addition thereto, the number ofdocuments and the number of folders may be displayed, like those in theUI 601 in the data exporter 201. Information during processing, such asthe number of processed documents and an execution time, may bedisplayed. A plurality of import destinations and a plurality of storagelocations of the data to be imported may be registered.

A condition during processing is displayed in an area 703. If aplurality of import destinations and a plurality of storage locations ofthe data to be imported are registered in the area 702, their respectivetotal values are displayed.

A button 704 is used to set an import destination. A button 705 is usedto set a storage location of imported data. A button 706 is used toperform a precheck before actually importing data. A button 707 is usedto import data.

The UI 701 is not limited to a configuration illustrated in FIG. 7,similarly to the UI 601 in the data exporter 201.

FIG. 8 illustrates an example of a log, which is to be output when afolder hierarchy exceeds an upper limit on the number of folderhierarchies, among logs of processing results by the precheck unit 305.The log output unit 302 outputs the log illustrated in FIG. 8.

If there exists one, exceeding the upper limit on the number of folderhierarchies in the destination document management application 205,among the folder hierarchies in the storage unit 203, a result obtainedby dividing the folder hierarchy is output.

In the example illustrated in FIG. 8, a path to a folder positioned in ahigher hierarchy after the division and a list of folders just under thefolder path are displayed. If a plurality of hierarchies exceeds theupper limit, all paths are output. If a path to a folder in a lowerhierarchy after the division exceeds the upper limit again, the log isrecursively output toward the path to the folder in the lower hierarchy.

A log of a precheck result in the data importer 204 is basicallysimilar, which is not illustrated. A log of a result obtained byactually importing data is almost similar in content.

FIG. 9 is a flowchart illustrating a flow of precheck processing by theprecheck unit 305 in the data exporter 201. In the present exemplaryembodiment, description is limited to processing relating to an upperlimit on the number of folder hierarchies in the precheck processing.The precheck processing is performed in response to the press of thebutton 606 in the UI 601. Data, which is registered as one to beexported in the area 602, is to be prechecked.

In step S901, the precheck unit 305 first acquires an upper limit on thenumber of hierarchies in the destination document management application205. The upper limit may be previously registered in the data exporter201, or may be inquired of the destination document managementapplication 205.

In step S902, the precheck unit 305 then acquires a folder to bemigrated from the storage unit 203 via the DB access unit 306. Thefolder to be acquired may be limited to a folder in the lowest hierarchywithin a migrating target range.

In step S903, the precheck unit 305 then checks the upper limit on thenumber of folder hierarchies acquired in step S901. In step S904, theprecheck unit 305 determines whether a path to the folder acquired instep S902 exceeds the upper limit on the number of folder hierarchies.If the folder path exceeds the upper limit (YES in step S904), theprocessing proceeds to step S905. In step S905, the precheck unit 305records the folder path acquired in step S902 in a temporary storagedevice. At this time, the folder path may be recorded for a higherhierarchy in a range in which the folder path does not exceed the upperlimit and subfolders under the higher hierarchy.

In step S906, the precheck unit 305 then determines whether all foldersare checked. If the precheck unit 305 determines that all the foldershave been checked (YES in step S906), the processing proceeds to stepS907. In step S907, the precheck unit 305 outputs a content recorded instep S905. The output may be a log as illustrated in FIG. 8, or may bedisplayed on the UI 601.

FIG. 10 is a flowchart illustrating a flow of data export processing inthe data exporter 201. In the present exemplary embodiment, folderexport processing and access right extraction processing are described,and the other processing is omitted in the present exemplary embodiment.The export processing is performed in response to the press of thebutton 607 in the UI 601.

In step S1001, the data export unit 304 acquires a folder from thestorage unit 203 via the DB access unit 306. In step S1002, the accessright processing unit 303 examines an inheritance setting of an accessright set in the folder acquired in step S1001. In step S1003, theaccess right processing unit 303 determines whether the inheritancesetting of the access right is “inherit parent's authority”. If theinheritance setting is “inherit parent's authority” (YES in step S1003),the processing proceeds to step S1004. In step S1004, the access rightprocessing unit 303 analyzes an access right to a parent folder of thefolder acquired in step S1001.

In step S1005, the access right processing unit 303 changes theinheritance setting to “set exclusive authority” for the folder acquiredin step S1001, and sets the same access right as the access right to theparent folder acquired in step S1004 in the folder. Note that the accessright information in the storage unit 203 is not actually rewritten atthis time but access right information to be extracted as migratinginformation is changed.

In step S1006, the access right processing unit 303 records the accessright rewritten in step S1005 in a temporary storage area. If theinheritance setting of the access right is “set exclusive authority” (NOin step S1003), the processing proceeds to step S1006. In step S1006,the access right processing unit 303 directly records the access rightin the temporary storage area.

In step S1007, the data export unit 304 stores the folder acquired instep S1001 in the temporary storage area 207. If the data export unit304 checks all folders to be migrated (YES in step S1008), theprocessing proceeds to step S1009. In step S1009, the log output unit302 outputs access right information relating to all the folders storedin the temporary storage area.

A format at this time may be any format, including a comma separatedvalue (CSV) format and an extensible markup language (XML) format, aslong as it can be understood by the data importer 204. The file isstored in the temporary storage area 207.

The access right information may be written to the file for each folder.Alternatively, access right processing may be performed separately fromfolder and document export processing.

FIG. 11 is a flowchart illustrating a flow of data import in the dataimporter 204. In the present exemplary embodiment, folder importprocessing and access right processing are described, and the otherprocessing is omitted. As to the processing performed by the limit checkunit 405, only the check of the number of folder hierarchies will bedescribed. The import processing is performed in response to the pressof the button 707 in the UI 701.

In step S1101, the data import unit 404 acquires a folder from thetemporary storage area 207. In step S1102, the limit check unit 405checks whether a folder to be imported exceeds an upper limit of thenumber of hierarchies.

If the folder to be imported exceeds the upper limit on the number ofhierarchies (YES in step S1102), the folder to be imported is importedto a shallower hierarchy not exceeding the upper limit on the number ofhierarchies, and therefore the processing proceeds to step S1103. Instep S1103, the limit check unit 405 generates link information forlinking a storage location after migration of the folder and a foldercorresponding to a parent folder stored before migration.

For example, a file in which information for specifying a storagelocation after migration of the folder is recorded is generated as linkinformation, and the generated link information is stored in a parentfolder to which the folder was supposed to be imported. Morespecifically, a content of the link information represents a storagelocation of a folder in a lower hierarchy to be imported to a differenthierarchy from that before migration. Therefore, the link informationstored in the parent folder is referred to so that the folder in thelower hierarchy, which has been imported after division, can bespecified.

Further, a link for specifying a parent folder before migration from thefolder may be generated. For example, a file in which information forspecifying a storage location of the parent folder where the folder hasexisted before migration is recorded may be generated as second linkinformation, and the second link information may be stored in the samehierarchy as that including the folder after migration (or in thefolder).

In step S1104, the data import unit 404 imports the folder via the DBaccess unit 406. While an import destination may be any location as longas it is effective to clear the upper limit on the number ofhierarchies, it may be desirably a shallower hierarchy. If the dataimport unit 404 determines that the folder to be imported does notexceed the upper limit (NO in step S1102), the processing proceeds tostep S1105. In step S1105, the data import unit 404 directly imports thefolder to be imported to the same hierarchy as that before migration.

In step S1106, the access right processing unit 403 then accesses a fileincluding access right information existing in the temporary storagearea 207, and acquires the access right information relating to thefolder acquired in step S1101.

In step S1107, the access right processing unit 403 analyzes an accessright to a parent folder of the folder, which has been imported in stepS1104 or S1105. At this time, note that the parent folder is a parentfolder in the storage unit 206, that is, a folder hierarchy aftermigration becomes a target.

In step S1108, the access right processing unit 403 compares the accessright acquired in step S1106 with the access right acquired in stepS1107. If the access rights are equal to each other (YES in step S1108),the processing proceeds to step S1109. In step S1109, the access rightprocessing unit 403 changes an inheritance setting of the access rightacquired in step S1106 into “inherit parent's authority”. In step S1110,the access right processing unit 403 sets the access right in the foldervia the DB access unit 406.

If the processing is completed for all the folders existing in thetemporary storage area 207 (YES in step S1111), the processing ends. Theaccess right processing may be performed after the import processing ofthe folders and documents has been performed.

FIGS. 12A, 12B, and 12C respectively illustrate examples of how data ismigrated and access rights are set. FIG. 12A illustrates an example offolder hierarchies and access rights, which are stored in the storageunit 203 before migration. A folder 1201 includes a folder A to a folderG. A parent of the folder B is the folder A. An access right inheritancesetting 1202 includes “exclusive” representing “set exclusive authority”and “inherit” representing “inherit parent's authority”. An access right1203 includes a reading right, a deletion right, and an editing right.

FIG. 12B illustrates an example of a state where data in the storageunit 203 is exported, and is stored in the temporary storage area 207.All the access right inheritance settings set to “inherit” in FIG. 12Aare changed into “exclusive”. Actually, an access right is notnecessarily set for a folder, and is separately managed as access rightinformation.

FIG. 12C illustrates an example of folder hierarchies and access rights,which are stored in the storage unit 206 after migration. In thisexample, the folder E and the subsequent folders are assumed to exceedan upper limit on the number of hierarchies, and are moved to under afolder A. As to an access right to a folder, an inheritance setting ofthe same access right as the access right to a parent folder of thefolder is changed to “inherit”.

While the inheritance setting for the folder E is “inherit” in FIG. 12A,the inheritance setting for the folder E illustrated in FIG. 12C is“exclusive” when the folder E is moved to under the folder A.

Link information representing a storage location of the folder Eillustrated in FIG. 12C is stored in the folder D illustrated in FIG.12C. Link information representing a storage location of the folder Dillustrated in FIG. 12C is stored in the folder E illustrated in FIG.12C.

A second exemplary embodiment of the present invention will be describedwith reference to FIGS. 13 and 14. The second exemplary embodimentdiffers from the first exemplary embodiment in export processing andimport processing, and therefore only different portions will bedescribed, and description of the same portions is omitted.

FIG. 13 is a flowchart illustrating a flow of data export processing ina data exporter 201. FIG. 13 is the same as FIG. 10 except that stepsS1301 to S1303 are added, and therefore only steps S1301 to S1303 willbe described.

In step S1301, an access right processing unit 303 examines an accessright to a parent folder of a folder acquired in step S1001. In stepS1302, the access right processing unit 303 then determines whether anaccess right to the folder acquired in step S1001 and the access rightacquired in step S1301 are the same. If the access rights are the same(YES in step S1302), the processing proceeds to step S1303. In stepS1303, the access right processing unit 303 marks the folder acquired instep S1001. Examples of marking means adding one column in access rightinformation to be exported in step S1009 and adding a Boolean value toeach of folders.

FIG. 14 is a flowchart illustrating a flow of data import in the dataimporter 204. FIG. 14 is the same as FIG. 11 except that step S1401 isadded, and therefore only step S1401 will be described.

If access rights are equal to each other (YES in step S1108), theprocessing proceeds to step S1401. In step S1401, an access rightprocessing unit 403 checks whether there is no mark on access rightinformation relating to a folder acquired in step S1101. If there is amark (YES in step S1401), the processing in step S1109 is skipped.

While an inheritance setting of an access right to a folder, which isthe same as that to a parent folder of the folder, is “set exclusiveauthority” before migration by the above-mentioned processing, itremains “set exclusive authority” without being changed to “inheritparent's authority” after migration.

A third exemplary embodiment of the present invention will be describedwith reference to FIGS. 15 and 16.

The third exemplary embodiment differs from the first exemplaryembodiment in import processing and the type of access right inheritancesetting in a destination document management application 205, andtherefore only different portions will be described.

In the third exemplary embodiment, an inheritance setting in which anaccess right inheritance destination can be selected is prepared as thetype of access right inheritance setting in the destination documentmanagement application 205. More specifically, the inheritance settingincludes “inherit an access right to a folder “xxx”” in addition to “setexclusive authority” and “inherit parent's authority”.

A path to a folder, for example, is substituted into “xxx”. If a userissues an access request to a folder assigned the inheritance setting,the destination document management application 205 confirms an accessright with a folder designated by the inheritance setting.

FIG. 15 is a flowchart illustrating a flow of data import in a dataimporter 204. FIG. 15 is the same as FIG. 11 except that step S1501 isadded, and therefore only step S1501 will be described.

In step S1104, the data importer 204 imports a folder. In step S1501, anaccess right processing unit 403 sets an inheritance setting of anaccess right to the imported folder to inherit an access right to aparent folder before migration. The subsequent processing is skipped, toperform processing for the subsequent folder, unlike in FIG. 11.

FIG. 16 illustrates a way of setting an access right after datamigration, and illustrates an example of folder hierarchies and accessrights, which are stored in a storage unit 206 after migration. In anaccess right inheritance setting 1601, an access right to a folder Dserving as a parent folder before migration is inherited.

Even when the access right to the folder D in FIG. 16 is changed, forexample, by the above-mentioned processing, a folder E that has beenmoved to another hierarchy can inherit the access right to the folder D.

Aspects of the present invention can also be realized by a computer of asystem or apparatus (or devices such as a CPU or MPU) that reads out andexecutes a program recorded on a memory device to perform the functionsof the above-described embodiments, and by a method, the steps of whichare performed by a computer of a system or apparatus by, for example,reading out and executing a program recorded on a memory device toperform the functions of the above-described embodiments. For thispurpose, the program is provided to the computer for example via anetwork or from a recording medium of various types serving as thememory device (e.g., computer-readable medium). In such a case, thesystem or apparatus, and the recording medium where the program isstored, are included as being within the scope of the present invention.While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all such modifications and equivalent structures andfunctions.

While the present invention has been described with reference toexemplary embodiments, it is to be understood that the invention is notlimited to the disclosed exemplary embodiments. The scope of thefollowing claims is to be accorded the broadest interpretation so as toencompass all modifications, equivalent structures, and functions.

This application claims priority from Japanese Patent Application No.2010-239982 filed Oct. 26, 2010, which is hereby incorporated byreference herein in its entirety.

What is claimed is:
 1. A data migration system for migrating data managed in a folder having a hierarchical structure from a source document management application to a destination document management application, which differs in an upper limit on the number of hierarchies from the source document management application, the data migration system comprising at least one processor communicatively-coupled to a memory, which functions as: a setting unit configured to change, when an inheritance setting of an access right set in a folder to be migrated in the source document management application is an inheritance setting for inheriting an access right to a parent folder, the inheritance setting in the folder to be migrated to an inheritance setting for setting an access right exclusively for the folder while setting a similar access right to the access right to the parent folder in the folder to be migrated; an export unit configured to export the folder to be migrated, data included in the folder, and information relating to an access right to the folder; an import unit configured to import, when a hierarchy including the folder to be migrated, which has been exported by the export unit, exceeds the upper limit on the number of hierarchies in the destination document management application, a folder under the hierarchy exceeding the upper limit and data included in the folder to a hierarchy shallower than the upper limit in the destination document management application; and a change unit configured to change, when an access right to the folder imported by the import unit, which has been analyzed based on the access right information, and an access right to a parent folder of the folder are equal to each other, an inheritance setting of the access right to the folder imported by the import unit to an inheritance setting for inheriting the access right to the parent folder.
 2. The data migration system according to claim 1, wherein the change unit does not change, when the imported folder is a folder, which is equal in an access right to the parent folder and in which the inheritance setting for setting the access right exclusively for the folder is set, in the source document management application, the inheritance setting in the folder even when the access right to the folder and the access right to the parent folder of the folder are equal to each other.
 3. A data migration system for migrating data relating to a plurality of folders and documents, which has been managed in a first source document management application to a second destination document management application, the data migration system comprising at least one processor communicatively-coupled to a memory, which functions as: a setting unit configured to change, for a folder, in which an inheritance setting of an access right is a first inheritance setting for inheriting an access right to a parent folder, of a plurality of folders, which has been managed in the first document management application, the inheritance setting of the access right to a second inheritance setting for setting an access right exclusively for the folder while setting the same access right as the access right to the parent folder; a determination unit configured to sequentially use the plurality of folders, which has been managed in the first document management application, as a folder to be migrated after the setting unit has performed the processing, and determine whether a hierarchy including the folder to be processed when the plurality of folders has been managed in the first document management application exceeds an upper limit on the number of hierarchies in the second document management application; and an import unit configured to store, when the determination unit determines that the hierarchy including the folder to be processed is within the upper limit, the folder to be processed in a hierarchy in the second document management application, which corresponds to the hierarchy including the folder to be processed when the plurality of folders has been managed in the first document management application, while storing the folder to be processed in a shallower hierarchy in the second document management application when the determination unit determines that the hierarchy including the folder to be processed exceeds the upper limit.
 4. The data migration system according to claim 3, further comprising a change unit configured to change, when the access right to the folder to be processed, which has been stored by the import unit, and an access right to a parent folder of the folder to be processed after being stored by the import unit are equal to each other, an inheritance setting of the access right to the folder to be processed, which has been stored by the import unit, to the first inheritance setting for inheriting the access right to the parent folder.
 5. The data migration system according to claim 4, wherein the change unit does not change, when the inheritance setting of the access right to the folder to be processed in the first document management application is the second inheritance setting for setting the access right exclusively for the folder, the inheritance setting of the access right to the folder to be processed, which has been stored by the import unit, to the first inheritance setting.
 6. The data migration system according to claim 3, wherein the import unit further stores, when the determination unit determines that the hierarchy including the folder to be processed exceeds the upper limit, link information for linking the folder to be processed and a folder corresponding to the parent folder when the plurality of folders has been managed in the first document management application.
 7. A data migration method for migrating data managed in a folder having a hierarchical structure from a source document management application to a destination document management application, which differs in an upper limit on the number of hierarchies from the source document management application, the data migration method comprising: changing, when an inheritance setting of an access right set in a folder to be migrated in the source document management application is an inheritance setting for inheriting an access right to a parent folder, the inheritance setting in the folder to be migrated to an inheritance setting for setting the access right exclusively for the folder while setting a similar access right to the access right to the parent folder in the folder to be migrated; exporting the folder to be migrated, data included in the folder, and information relating to an access right to the folder; importing, when a hierarchy including the folder to be migrated, which has been exported in the exporting, exceeds the upper limit on the number of hierarchies in the destination document management application, a folder under the hierarchy exceeding the upper limit and data included in the folder to a hierarchy shallower than the upper limit in the destination document management application; and changing, when an access right to the folder imported in the importing, which has been analyzed based on the access right information, and an access right to a parent folder of the folder are equal to each other, an inheritance setting of the access right to the folder imported in the importing to an inheritance setting for inheriting the access right to the parent folder.
 8. A data migration method performed by a computer to shift data relating to a plurality of folders and documents, which have been managed in a first source document management application to a second destination document management application, the data migration method comprising: changing, for a folder, in which an inheritance setting of an access right is a first inheritance setting for inheriting an access right to a parent folder, of the plurality of folders, which has been managed in the first document management application, the inheritance setting of the access right to a second inheritance setting for setting an access right exclusively for the folder while setting the same access right as the access right to the parent folder; sequentially using the plurality of folders, which has been managed in the first document management application, as a folder to be migrated after the processing in the setting has been performed, and determining whether a hierarchy including the folder to be processed when the plurality of folders has been managed in the first document management application exceeds an upper limit on the number of hierarchies in the second document management application; and storing, when it is determined in the determining that the hierarchy including the folder to be processed is within the upper limit, the folder to be processed in a hierarchy in the second document management application, which corresponds to the hierarchy including the folder to be processed when the plurality of folders has been managed in the first document management application, while storing the folder to be processed in a shallower hierarchy in the second document management application when it is determined in the determining that the hierarchy including the folder to be processed exceeds the upper limit.
 9. A non-transitory computer-readable storage medium storing a computer program for migrating data managed in a folder having a hierarchical structure from a source document management application to a destination document management application, which differs in an upper limit on the number of hierarchies from the source document management application, the computer program causing a computer to function as: a setting unit configured to change, when an inheritance setting of an access right set in a folder to be migrated in the source document management application is an inheritance setting for inheriting an access right to a parent folder, the inheritance setting in the folder to be migrated to an inheritance setting for setting an access right exclusively for the folder while setting a similar access right to the access right to the parent folder in the folder to be migrated; an export unit configured to export the folder to be migrated, data included in the folder, and information relating to an access right to the folder; an import unit configured to import, when a hierarchy including the folder to be migrated, which has been exported by the export unit, exceeds the upper limit on the number of hierarchies in the destination document management application, a folder under the hierarchy exceeding the upper limit and data included in the folder to a hierarchy shallower than the upper limit in the destination document management application; and a change unit configured to change, when the access right to the folder imported by the import unit, which has been analyzed based on the access right information, and an access right to a parent folder of the folder are equal to each other, an inheritance setting of the access right to the folder imported by the import unit to an inheritance setting for inheriting the access right to the parent folder.
 10. The non-transitory computer-readable storage medium according to claim 9, wherein the change unit does not change, when the imported folder is a folder, which is equal in an access right to the parent folder and in which the inheritance setting for setting the access right exclusively for the folder is set, in the source document management application, the inheritance setting in the folder even when the access right to the folder and the access right to the parent folder of the folder are equal to each other.
 11. A non-transitory computer-readable storage medium storing a computer program for migrating data relating to a plurality of folders and documents, which have been managed in a first source document management application to a second destination document management application, the computer program causing a computer to function as: a setting unit configured to change, for a folder, in which an inheritance setting of an access right is a first inheritance setting for inheriting an access right to a parent folder, of a plurality of folders, which has been managed in the first document management application, the inheritance setting of the access right to a second inheritance setting for setting an access right exclusively for the folder while setting the same access right as the access right to the parent folder; a determination unit configured to sequentially use the plurality of folders, which has been managed in the first document management application, as a folder to be migrated after the setting unit has performed the processing, and determine whether a hierarchy including the folder to be processed when the plurality of folders has been managed in the first document management application exceeds an upper limit on the number of hierarchies in the second document management application; and an import unit configured to store, when the determination unit determines that the hierarchy including the folder to be processed is within the upper limit, the folder to be processed in a hierarchy in the second document management application, which corresponds to the hierarchy including the folder to be processed when the plurality of folders has been managed in the first document management application, while storing the folder to be processed in a shallower hierarchy in the second document management application when the determination unit determines that the hierarchy including the folder to be processed exceeds the upper limit.
 12. The non-transitory computer-readable storage medium according to claim 11, wherein the computer program causes the computer to further function as: a change unit configured to change, when the access right to the folder to be processed, which has been stored by the import unit, and the access right to a parent folder of the folder to be processed after being stored by the import unit are equal to each other, an inheritance setting of the access right to the folder to be processed, which has been stored by the import unit, to the first inheritance setting for inheriting the access right to the parent folder.
 13. The non-transitory computer-readable storage medium according to claim 12, wherein the change unit does not change, when the inheritance setting of the access right to the folder to be processed in the first document management application is the second inheritance setting for setting the access right exclusively for the folder, the inheritance setting of the access right to the folder to be processed, which has been stored by the import unit, to the first inheritance setting.
 14. The non-transitory computer-readable storage medium according to claim 11, wherein the import unit further stores, when the determination unit determines that the hierarchy including the folder to be processed exceeds the upper limit, link information for linking the folder to be processed and a folder corresponding to the parent folder when the plurality of folders has been managed in the first document management application. 